home *** CD-ROM | disk | FTP | other *** search
- i = "1";
- radius = "38";
- r2 = radius * radius;
- while(i < eval("/:rafts"))
- {
- k = i + "1";
- if(eval("../raft" add i add "/:destroyed") == "0")
- {
- while(eval("/:rafts") >= k)
- {
- if(eval("../raft" add k add "/:destroyed") == "0")
- {
- deltax = getProperty("../raft" add i, _X) - getProperty("../raft" add k, _X);
- deltay = getProperty("../raft" add i, _Y) - getProperty("../raft" add k, _Y);
- dist = deltax * deltax + deltay * deltay;
- if(r2 >= dist)
- {
- tempx = eval("../raft" add i add "/:xval");
- tempy = eval("../raft" add i add "/:yval");
- set("../raft" add i add "/:xval",eval("../raft" add k add "/:xval"));
- set("../raft" add i add "/:yval",eval("../raft" add k add "/:yval"));
- set("../raft" add k add "/:xval",tempx);
- set("../raft" add k add "/:yval",tempy);
- ix = eval("../raft" add i add "/:xval");
- iy = eval("../raft" add i add "/:yval");
- kx = tempx;
- ky = tempy;
- if(kx * ix < "0")
- {
- setProperty("../raft" add k, _X, getProperty("../raft" add k, _X) + tempx);
- setProperty("../raft" add i, _X, getProperty("../raft" add i, _X) + eval("../raft" add i add "/:xval"));
- }
- if(ky * iy < "0")
- {
- setProperty("../raft" add k, _Y, getProperty("../raft" add k, _Y) + tempy);
- setProperty("../raft" add i, _Y, getProperty("../raft" add i, _Y) + eval("../raft" add i add "/:yval"));
- }
- }
- }
- k += "1";
- }
- }
- i += "1";
- }
-